256 research outputs found

    On the Jacopini Technique

    Get PDF
    The general concern of the Jacopini technique is the question: 'Is it\ud consistent to extend a given lambda calculus with certain equations?'\ud The technique was introduced by Jacopini in 1975 in his proof that in the\ud untyped lambda calculus Ω is easy, i.e., Ω can be assumed equal to any\ud other (closed) term without violating the consistency of the lambda\ud calculus. The presentations of the Jacopini technique that are known\ud from the literature are difficult to understand and hard to generalise. In\ud this paper we generalise the Jacopini technique for arbitrary lambda\ud calculi. We introduce the concept of proof-replaceability by which the\ud structure of the technique is simplified considerably. We illustrate the\ud simplicity and generality of our formulation of the technique with some\ud examples. We apply the Jacopini technique to the λµ-calculus, and we\ud prove a general theorem concerning the consistency of extensions of the\ud λµ-calculus of a certain form. Many well known examples (e.g., the easi-\ud ness of Ω) are immediate consequences of this general theorem

    Indicators of financial crises do work! An early-warning system for six Asian countries

    Get PDF
    Indicators of financial crisis generally do not have a good track record. This paper presents an early warning system for six countries in Asia, in which indicators do work.We distinguish three types of financial crises, currency crises, banking crises and debt crises, and extract four groups of indicators from the literature—external, financial, domestic (real and public), and global indicators—that are likely to affect the probability of financial crises. The significance of the indicator groups is tested in a multivariate logit model on a panel of six Asian countries for the period 1970:01-2001:12. An additional feature is that we examine four different currency crisis dating definitions. A within-sample signal extraction experiment reveals that some currency crises dating schemes outperform others.financial crises, currency crises, banking crises, debt crises, early warning system, panel data, multivariate logit, factor analysis

    Proving the genericity lemma by leftmost reduction is simple

    Get PDF
    The Genericity Lemma is one of the most important motivations to take in the untyped lambda calculus the notion of solvability as a formal representation of the informal notion of undefinedness. We generalise solvability towards typed lambda calculi, and we call this generalisation: usability. We then prove the Genericity Lemma for un-usable terms. The technique of the proof is based on leftmost reduction, which strongly simplifies the standard proof

    Indicators of financial crises do work! : an early-warning system for six Asian countries

    Get PDF
    Indicators of financial crisis generally do not have a good track record. This paper presents an early warning system for six countries in Asia, in which indicators do work.We distinguish three types of financial crises, currency crises, banking crises and debt crises, and extract four groups of indicators from the literatureexternal, financial, domestic (real and public), and global indicatorsthat are likely to affect the probability of financial crises. The significance of the indicator groups is tested in a multivariate logit model on a panel of six Asian countries for the period 1970:01-2001:12. An additional feature is that we examine four different currency crisis dating definitions. A within-sample signal extraction experiment reveals that some currency crises dating schemes outperform others.

    Indicators of financial crises do work! An early-warning system for six Asian countries

    Get PDF
    Indicators of financial crisis generally do not have a good track record. This paper presents an early warning system for six countries in Asia, in which indicators do work.We distinguish three types of financial crises, currency crises, banking crises and debt crises, and extract four groups of indicators from the literature—external, financial, domestic (real and public), and global indicators—that are likely to affect the probability of financial crises. The significance of the indicator groups is tested in a multivariate logit model on a panel of six Asian countries for the period 1970:01-2001:12. An additional feature is that we examine four different currency crisis dating definitions. A within-sample signal extraction experiment reveals that some currency crises dating schemes outperform others.financial crises, currency crises, banking crises, debt crises, early warning system, panel data, multivariate logit, factor analysis

    Architecture Specifications in CλaSH

    Get PDF
    This paper introduces CλaSH, a novel hardware specification environment, by discussing several non-trivial examples. CλaSH is based on the functional language Haskell, and exploits many of its powerful abstraction mechanisms such as higher order functions, polymorphism, lambda abstraction, pattern matching, type derivation. As a result, specifications in CλaSH are concise and semantically clear, and simulations can be directly executed within a Haskell evaluation environment. CλaSH generates synthesizable low-level VHDL code by applying several transformation rules to a functional specification of a digital circuit

    Streaming Reduction Circuit

    Get PDF
    Reduction circuits are used to reduce rows of floating point values to single values. Binary floating point operators often have deep pipelines, which may cause hazards when many consecutive rows have to be reduced. We present an algorithm by which any number of consecutive rows of arbitrary lengths can be reduced by a pipelined commutative and associative binary operator in an efficient manner. The algorithm is simple to implement, has a low latency, produces results in-order, and requires only small buffers. Besides, it uses only a single pipeline for the involved operation. The complexity of the algorithm depends on the depth of the pipeline, not on the length of the input rows. In this paper we discuss an implementation of this algorithm and we prove its correctness

    A mathematical approach towards hardware design

    Get PDF
    Today the hardware for embedded systems is often specified in VHDL. However, VHDL describes the system at a rather low level, which is cumbersome and may lead to design faults in large real life applications. There is a need of higher level abstraction mechanisms. In the embedded systems group of the University of Twente we are working on systematic and transformational methods to design hardware architectures, both multi core and single core. The main line in this approach is to start with a straightforward (often mathematical) specification of the problem. The next step is to find some adequate transformations on this specification, in particular to find specific optimizations, to be able to distribute the application over different cores. The result of these transformations is then translated into the functional programming language Haskell since Haskell is close to mathematics and such a translation often is straightforward. Besides, the Haskell code is executable, so one immediately has a simulation of the intended system. Next, the resulting Haskell specification is given to a compiler, called CëaSH (for CAES LAnguage for Synchronous Hardware) which translates the specification into VHDL. The resulting VHDL is synthesizable, so from there on standard VHDL-tooling can be used for synthesis. In this work we primarily focus on streaming applications: i.e. applications that can be modeled as data-flow graphs. At the moment the CëaSH system is ready in prototype form and in the presentation we will give several examples of how it can be used. In these examples it will be shown that the specification code is clear and concise. Furthermore, it is possible to use powerful abstraction mechanisms, such as polymorphism, higher order functions, pattern matching, lambda abstraction, partial application. These features allow a designer to describe circuits in a more natural and concise way than possible with the language elements found in the traditional hardware description languages. In addition we will give some examples of transformations that are possible in a mathematical specification, and which do not suffer from the problems encountered in, e.g., automatic parallelization of nested for-loops in C-programs
    corecore